﻿using AbpApplication.AppServices;
using AbpApplication.InPut;
using Reconstruct_Desktop.Apiservice.Dto;
using Reconstruct_Desktop.Apiservice.InPut;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using wms_wpf.InPut;

namespace NewWms.Apiservice
{
     public interface IBaseService_Client
    {

        Task<bool> Create_Boxs(InPut_BaseService_Client input);
        Task<bool> DeleteBox(InPut_BaseService8_Client InPut);
        Task<bool> Create_Warehouses(InPut_BaseService3_Client input);
        Task<bool> CreateMaterialBase(InPut_BaseService7_Client inPut);
        Task<bool> UpdateMaterialBaserQuantity(InPut_BaseService7_Client inPut);
        Task<Tuple<bool,string>> CreateTaskOrder(InPut_BaseService6_Client InPut);
        Task<bool> DeleteTaskOrder(List<string> InPut);
        Task<bool> RemovesMaterial(List<string> InPut);
        Task<Tuple<bool, string,string>> DeleteMaterial(InPut_BaseService4_Client InPut);
        Task<string> UpdateTaskOrderState(InPut_BaseService11_Client InPut);
        Task<string> CreateLog(string Type, string Note);
        Task<Tuple<bool, List<TaskOrderDto>>> CreateTaskOrderOut(InPut_BaseService13_Client InPut);
        Task<Tuple<bool, List<TaskOrderDto>>> CreateNeetOutMaterial(InPut_BaseService10_Client InPut);
        Task<bool> Update_Box(InPut_BaseService2_Client input);
        Task<bool> CreateMaterialProperty(InPut_BaseService14_Client InPut);
        Task<bool> Create_Bintype(InPut_BaseService16_Client InPut);
        Task<bool> UpdateState_ByWarehouselineId(InPut_BaseService17_Client InPut);
        Task<bool> UpdateState_ByInlethouselineId(InPut_BaseService18_Client InPut);
        Task<List<BoxTypeDto>> Getlist_Bintypes();
        Task<bool> Create_Inlethouse(InPut_BaseService9_Client input);
        Task<bool> Create_Inlethouses(InPut_BaseService9_Client input);
        Task<bool> UpdateNeetQuantity(InPut_BaseService19_Client InPut);//修改出库数量
        Task<bool> AllocationOrder(InPut_BaseService20_Client InPut);
        Task<bool> Deallocate(string Symbol);
        Task<bool> AllocationOrderAgvTask(InPut_BaseService21_Client InPut);
        Task<bool> Update_SowingWall(string SowingWallLine_Name);
        Task<bool> Polling_OutBound();
        Task<bool> moveContainer_wms(string soltcode,string direction,string TaskType,string BoxCode);
        Task<bool> DeleteMoveContainer(string boxCode);
        Task<bool> SendCustomerOutRep(string Consumer_MaterialId);
        Task<bool> Manual_FinishOrder(Guid PutOutOrder_id);
        Task<bool> UpdatManualQuantity(InPut_BaseService24_Client InPut);
        Task<bool> UpdateMaterialQuantity(InPut_BaseService25_Client InPut);
        Task<bool> CheckBoxMaterial(string BoxPosition);
        Task<bool> Start_StockTaking(InPut_BaseService26_Client InPut);
        Task<Tuple<bool,string>> GetOrderNo(string BoxCode);
        Task<bool> TaskStatusChange(InPut_EssService InPut);
        Task<bool> SingleOutbount(Guid guid);
        Task<bool> UpdateBoxMaterial(InPut_BaseService7_Client inPut);
        Task<bool> MaterialCheck(InPut_CunsumerService5 InPut);
        Task<bool> DeleteCustomCheckList(List< Guid> guid);
        Task<string> GetConveyorline();
    }
}
